#ifndef SM_PROCESS_H_
#define SM_PROCESS_H_

#include "sc95f.h"

#define SOFTWARE_VERSION_F20 "V0.5"
#define SOFTWARE_VERSION_F20_NUM 04

#define BTN_EVENT_BASE 0X100
#define IOT_EVENT_BASE 0X200
#define SYS_EVENT_BASE 0X400

#define BTN_ONOFF_EVENT                BTN_EVENT_BASE+0x01
#define BTN_AMD_EVENT                  BTN_EVENT_BASE+0x02
#define BTN_ION_EVENT                  BTN_EVENT_BASE+0x03
#define BTN_TIM_EVENT                  BTN_EVENT_BASE+0x04
#define BTN_FILTER_RESET_EVENT         BTN_EVENT_BASE+0x05
#define BTN_MATCH_NETWORK_EVENT        BTN_EVENT_BASE+0x06
#define BTN_FILTER_SPEED_UP_EVENT      BTN_EVENT_BASE+0x07
#define BTN_FACTORY_TEST_MODE_EVENT    BTN_EVENT_BASE+0x08
#define BTN_MODE_EVENT                 BTN_EVENT_BASE+0x09

#define SYS_TIMING_OUT_EVENT           SYS_EVENT_BASE+0x01
#define SYS_FILTER_TIMEOUT_EVENT       SYS_EVENT_BASE+0x02

#define IOT_ONOFF_EVENT                IOT_EVENT_BASE+0x01
#define IOT_AMD_EVENT                  BTN_EVENT_BASE+0x02
#define IOT_ION_EVENT                  BTN_EVENT_BASE+0x03
#define IOT_TIM_SET_EVENT              BTN_EVENT_BASE+0x04
#define IOT_FAN_EVENT                  IOT_EVENT_BASE+0x05
#define IOT_MODE_EVENT                 IOT_EVENT_BASE+0x06
#define IOT_MODE_SLEEP_EVENT           IOT_EVENT_BASE+0x07
#define IOT_MODE_AUTO_EVENT            IOT_EVENT_BASE+0x08
#define IOT_MODE_NORMAL_EVENT          IOT_EVENT_BASE+0x09
#define IOT_MODE_FORCE_EVENT           IOT_EVENT_BASE+0x0a

#define IOT_WIFI_PROVISION             IOT_EVENT_BASE+0x0b
#define IOT_WIFI_STA_UPDATE            IOT_EVENT_BASE+0x0c

void DeviceProcess(uint32_t* event);
void RGBReduceLightSwitch(uint8_t en);
#endif

